package com.xiaoyu.string;

/**
 * Created by xiaoyu on 16/3/29.
 *
 */

/*
    使用同一个字符串常量值“strVal_1”

     #2 = String             #31            //  strVal_1
     #31 = Utf8               strVal_1

    ldc表示将一个常量加载到操作数栈
    0: ldc           #16     //将#16对应的常量值加载到操作数栈中
    2: astore_1              //将当前操作数栈中赋于变量1，即str1
    3: ldc           #16     //再次将#16对应的常量值加载到操作数栈中
    5: astore_2              //将当前操作数栈中赋于变量2，即str2

    可以发现指向同一个内存地址
 */
public class ConstPoolTest {
    public static void main(String[] args) {
        String str1 = "strVal_1";
        String str2 = "strVal_1";
        //print str1==str2 is true
        System.out.printf("str1==str2 is %b", str1 == str2);
    }
}
